home *** CD-ROM | disk | FTP | other *** search
Wrap
var $jq = jQuery.noConflict(); var glideSession = { token: null, username: null, userId: null, accountId: null, email: null, fullName: null, clear: function() { this.token = null; this.username = null; this.userId = null; this.accountId = null; this.email = null; this.fullName = null; }, load: function(d) { this.token = d.token; this.username = d.username; this.userId = d.userId; this.accountId = d.accountId; this.email = d.email; this.fullName = d.fullName; } }; var glideExtension = function() { var APP_STORAGE_SESSION_KEY = "glidelife.com", GLIDE_REGISTER_URL = "https://account.glidesociety.com/register/default.aspx?returnUrl=http://www.glidelife.com", GLIDE_API_URL = "http://alpha.glidelife.com/api", GLIDE_API_URL_SECURE = "https://alpha.glidelife.com/api", GLIDE_DESKTOP_URL = "http://desktop.glidesociety.com", GLIDE_PUBLIC_URL = "http://www.glidesociety.com", GLIDE_URL = "http://alpha.glidelife.com", GLIDE_WEBMAIL_URL = "http://webmail.glidefree.com", ENDPOINT_FS = "/fs/default.aspx", ENDPOINT_SESSION = "/session/default.aspx", EMPTY_GUID = "00000000-0000-0000-0000-000000000000", LOGIN_REALM = "Glide OS Login", PAGE_SIZE = 10, PAGE_SIZE_LARGE = 40, CAPTURE_TYPES = [ { label: "Glide Write", type: "write" }, { label: "PDF", type: "pdf" }, { label: "Word 2007", type: "word2007" }, { label: "Word (97/2003/XP)", type: "word" }, { label: "RTF", type: "rtf" } ], CAPTURE_TYPE_IMAGE = "image", DISABLE_URLS = [ { url: "about:" }, { url: "chrome:" }, { url: "webmail.glidefree.com" }, { url: "glidelife.com" }, { url: "account.glidesociety.com" }, { url: "desktop.glidesociety.com" }, { url: "www.glidesociety.com/site.aspx" }, { url: "www.glidesociety.com/user.aspx" }, { url: "xmobile.glidesociety.com" }, { url: "xservice.glidesociety.com" } ], REUSE_WINDOW_URLS = [ "about:blank", "about:config", "webmail.glidefree.com", "glidelife.com/glide.aspx", "desktop.glidesociety.com/upload.aspx", "xservice.glidesociety.com" ], application = Components.classes["@mozilla.org/fuel/application;1"].getService(Components.interfaces.fuelIApplication), preferences = Components.classes["@mozilla.org/preferences-service;1"].getService(Components.interfaces.nsIPrefBranch), prompt = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService), loginManager = Components.classes["@mozilla.org/login-manager;1"].getService(Components.interfaces.nsILoginManager), getCurrentDocument = function() { return gBrowser.contentDocument; }, isWindowReuseable = function() { var location = getCurrentDocument().location.href.toLowerCase(); for (var i = 0; i < REUSE_WINDOW_URLS.length; i++) { if (location.indexOf(REUSE_WINDOW_URLS[i].toLowerCase()) >= 0) return true; } return false; }, updateUI = function() { var location = getCurrentDocument().location.href.toLowerCase(); var hide = false; for (var i = 0; i < DISABLE_URLS.length; i++) { if (location.indexOf(DISABLE_URLS[i].url.toLowerCase()) >= 0) { hide = true; break; } } document.getElementById("glide-menu-glide-login").hidden = glideSession.token != null; document.getElementById("glide-menu-glide-register").hidden = glideSession.token != null; document.getElementById("glide-menu-glide-login-sep").hidden = glideSession.token != null; document.getElementById("glide-menu-glide-logout-sep").hidden = null == glideSession.token; document.getElementById("glide-menu-glide-logout").hidden = null == glideSession.token; document.getElementById("glide-menu-bin-add").hidden = hide; document.getElementById("glide-menu-bin-add-sep").hidden = hide; document.getElementById("glide-capture-toolbar").disabled = hide; document.getElementById("glide-menu-sync-import").hidden = hide; document.getElementById("glide-menu-sync-import-sep").hidden = hide; document.getElementById("glide-menu-social-add-post").hidden = hide; document.getElementById("glide-menu-social-add-group").hidden = hide; document.getElementById("glide-menu-social-add-sep").hidden = hide; document.getElementById("glide-menu-email-add").hidden = hide; document.getElementById("glide-menu-email-add-sep").hidden = hide; document.getElementById("glide-menu-groups-add").hidden = hide; document.getElementById("glide-menu-groups-add-sep").hidden = hide; document.getElementById("glide-menu-meeting-add").hidden = hide; document.getElementById("glide-menu-meeting-add-sep").hidden = hide; document.getElementById("glide-menu-write-add").hidden = hide; document.getElementById("glide-menu-write-add-sep").hidden = hide; }, openToolbarButton = function(who) { if (who && !who.open && !who.disabled) { var toolbarButton = null; var toolbarButtons = who.parentNode.getElementsByTagName("toolbarbutton"); var toolbarButtonsLength = toolbarButtons.length; for (var i = 0; i < toolbarButtonsLength; i++) { toolbarButton = toolbarButtons.item(i); if (toolbarButton && toolbarButton != who && toolbarButton.open) { toolbarButton.open = false; who.open = true; break; } } } }, tabSelected = function() { updateUI(); }, init = function() { var location = getCurrentDocument().location.href; updateUI(); }, loadUrl = function(url) { window._content.document.location = url; window.content.focus(); }, loadUrlInNewWindow = function(url, width, height, extras) { if (!width) return window.open(url, "glide_" + new Date().getTime(), "toolbar=yes,directories=yes,location=yes,menubar=yes,resizable=yes,scrollbars=yes,status=yes"); if (undefined == extras || !extras) return window.open(url, "glide_" + new Date().getTime(), "width=" + width + ",height=" + height + ",toolbar=no,directories=no,location=no,menubar=no,resizable=yes,scrollbars=yes,status=no"); return window.open(url, "glide_" + new Date().getTime(), "width=" + width + ",height=" + height + ",toolbar=yes,directories=yes,location=yes,menubar=yes,resizable=yes,scrollbars=yes,status=yes"); }, loadUrlInTab = function(url) { if (isWindowReuseable()) { loadUrl(url); return; } var t = getBrowser().addTab(url); getBrowser().selectedTab = t; }, invokeService = function(endpoint, method, ssl, data, callback) { var url = (ssl ? GLIDE_API_URL_SECURE : GLIDE_API_URL) + endpoint; data.method = method; $jq.ajax({ cache: false, url: url, dataType: "jsonp", data: data, success: function(d, s) { callback(d); }, error: function(x, s, e) { callback({ success: false, message: "Your request could not be completed at this time, please try again later" }); } }); }, login = function(next) { if (glideSession.token) { if (next) next(); return; } var username = { value: "" }; var password = { value: "" }; var remember = { value: true }; try { var logins = loginManager.findLogins({}, "chrome://glide", null, LOGIN_REALM); var loginInfo = null; if (logins.length > 0) { loginInfo = logins[0]; username.value = loginInfo.username; password.value = loginInfo.password; } if (!prompt.promptUsernameAndPassword(null, "Glide OS Login", "Please enter your Glide Username and Password", username, password, "Remember Me", remember)) return; if (!remember.value && loginInfo) loginManager.removeLogin(loginInfo); else if (loginInfo) { if (username.value != loginInfo.username || password.value != loginInfo.password) { var oldInfo = loginInfo; loginInfo = Components.classes["@mozilla.org/login-manager/loginInfo;1"].createInstance(Components.interfaces.nsILoginInfo); loginInfo.init("chrome://glide", null, LOGIN_REALM, username.value, password.value, "", ""); loginManager.modifyLogin(oldInfo, loginInfo); } } else { loginInfo = Components.classes["@mozilla.org/login-manager/loginInfo;1"].createInstance(Components.interfaces.nsILoginInfo); loginInfo.init("chrome://glide", null, LOGIN_REALM, username.value, password.value, "", ""); if (remember.value) loginManager.addLogin(loginInfo); } glideSession.clear(); invokeService(ENDPOINT_SESSION, "login", true, { username: username.value, password: password.value }, function(d) { if (null == d || (null == d.message && !d.success)) { prompt.alert(null, "Glide OS Error", "Could not access the Glide OS at this time, please try again later"); } else if (!d.success) { prompt.alert(null, "Glide OS Error", d.message); login(next); } glideSession.load(d); application.storage.set(APP_STORAGE_SESSION_KEY, glideSession); updateUI(); if (next) next(); }); } catch (e) { prompt.alert(null, "Glide OS Error", "Could not log in to the Glide OS:\n\n" + e); return; } }, ensureLoggedIn = function(next) { if (!glideSession.token) { var s = application.storage.get(APP_STORAGE_SESSION_KEY, { token: null, username: null, userId: null, accountId: null, email: null, fullName: null }); if (!s.token) { login(next); return false; } glideSession.load(s); } return true; }, justLogin = function(evt) { ensureLoggedIn(null); }, registerForGlide = function(evt) { loadUrlInTab(GLIDE_REGISTER_URL); }, openGlide = function(evt) { if (!ensureLoggedIn(openGlide)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#csi=5&ser=5&offset=0&safety=1&sort=-1"); }, openDesktop = function(evt) { if (!ensureLoggedIn(openDesktop)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "?token=" + glideSession.token); }, logout = function(evt) { var token = glideSession.token; var confirmLogout = preferences.getBoolPref("extensions.glideos.confirmLogout"); var notAgain = { value: false }; if (token && confirmLogout && !prompt.confirmCheck(null, "Glide OS Logout", "Are you sure you wish to log out?\n\nYou will have to log in again to access the Glide OS.\n\nAny Glide pages you have open should be closed,\nthese pages may not work properly after you log out.\n\n", "Do not ask me this again", notAgain)) return; if (notAgain.value) { preferences.setBoolPref("extensions.glideos.confirmLogout", false); } glideSession.clear(); application.storage.set(APP_STORAGE_SESSION_KEY, { token: null, username: null, userId: null, accountId: null, email: null, fullName: null }); if (!token) return; invokeService(ENDPOINT_SESSION, "logout", true, { token: token }, function(d) { updateUI(); }); }, addToBin = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(addToBin)) return; var categoryId = preferences.getCharPref("extensions.glide.lastBinCategory"); var params = { inn: { glideSession: glideSession, invokeService: invokeService, ENDPOINT_FS: ENDPOINT_FS, categoryId: categoryId }, out: null }; window.openDialog("chrome://glide/content/bin_category.xul", "", "centerscreen,modal,resizable=no", params).focus(); if (params.out) { categoryId = params.out; if ("NONE" == categoryId) { categoryId = null; preferences.setCharPref("extensions.glide.lastBinCategory", ""); } else preferences.setCharPref("extensions.glide.lastBinCategory", categoryId); } else { return; } invokeService(ENDPOINT_FS, "addtobinsingle", false, { token: glideSession.token, url: location, title: title, categoryId: categoryId }, function(d) { if (null == d || (null == d.message && !d.success)) { prompt.alert(null, "Glide OS Error", "Could not access the Glide OS at this time, please try again later"); } else if (!d.success) { prompt.alert(null, "Glide OS Error", d.message); } else if (d.message) { prompt.alert(null, "Glide OS", d.message); } }); }, viewBin = function(evt) { if (!ensureLoggedIn(viewBin)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=1&csi=5&ser=5&offset=0&safety=1&sort=-1&sort=date&descending=true"); }, promptType = function() { var types = new Array(); for (var i = 0; i < CAPTURE_TYPES.length; i++) { types.push(CAPTURE_TYPES[i].label); } var selection = {}; if (!prompt.select(null, "Select Format", "Please choose the import format for your selected items:", types.length, types, selection)) return null; return CAPTURE_TYPES[selection.value].type; }, selectCaptureTarget = function(sync) { var params = { inn: { glideSession: glideSession, invokeService: invokeService, ENDPOINT_FS: ENDPOINT_FS, sync: sync }, out: null }; window.openDialog("chrome://glide/content/locator.xul", "", "centerscreen,modal,resizable=no", params).focus(); return params.out; }, captureImport = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(captureImport)) return; var image = false; var type = promptType(); if (null == type) return; var targetId = selectCaptureTarget(false); if (!targetId) return; invokeService(ENDPOINT_FS, "capturesingle", false, { token: glideSession.token, type: type, url: location, title: title, targetId: targetId.value, image: image }, function(d) { if (null == d || (null == d.message && !d.success)) { prompt.alert(null, "Glide OS Error", "Could not access the Glide OS at this time, please try again later"); } else if (!d.success) { prompt.alert(null, "Glide OS Error", d.message); } else if (d.message) { prompt.alert(null, "Glide OS", d.message); } }); }, captureBookmark = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(captureBookmark)) return; var targetId = selectCaptureTarget(false); if (!targetId) return; invokeService(ENDPOINT_FS, "capturebookmark", false, { token: glideSession.token, url: location, title: title, targetId: targetId.value }, function(d) { if (null == d || (null == d.message && !d.success)) { prompt.alert(null, "Glide OS Error", "Could not access the Glide OS at this time, please try again later"); } else if (!d.success) { prompt.alert(null, "Glide OS Error", d.message); } else if (d.message) { prompt.alert(null, "Glide OS", d.message); } }); }, syncCapture = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(syncCapture)) return; var image = false; var type = promptType(); if (null == type) return; var targetId = selectCaptureTarget(true); if (!targetId) return; invokeService(ENDPOINT_FS, "capturesingle", false, { token: glideSession.token, type: type, url: location, title: title, targetId: targetId.value, image: image }, function(d) { if (null == d || (null == d.message && !d.success)) { prompt.alert(null, "Glide OS Error", "Could not access the Glide OS at this time, please try again later"); } else if (!d.success) { prompt.alert(null, "Glide OS Error", d.message); } else if (d.message) { prompt.alert(null, "Glide OS", d.message); } }); }, uploadFiles = function(evt) { if (!ensureLoggedIn(uploadFiles)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/upload.aspx?token=" + glideSession.token); }, gotoMusic = function(evt) { if (!ensureLoggedIn(gotoMusic)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=33&ser=31&offset=0&safety=0&sort=modified&ac=Audio&q="); }, gotoVideos = function(evt) { if (!ensureLoggedIn(gotoVideos)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=34&ser=31&offset=0&safety=0&sort=modified&ac=Video&q="); }, gotoBookmarks = function(evt) { if (!ensureLoggedIn(gotoBookmarks)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=36&ser=31&offset=0&safety=0&sort=modified&ac=Url&q="); }, gotoOther = function(evt) { if (!ensureLoggedIn(gotoOther)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=37&ser=31&offset=0&safety=0&sort=modified&ac=Other&q="); }, gotoFolders = function(evt) { if (!ensureLoggedIn(gotoFolders)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=38&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=Personal&q="); }, gotoSlideshows = function(evt) { if (!ensureLoggedIn(gotoSlideshows)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=39&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=Image&q="); }, gotoMusicPlaylists = function(evt) { if (!ensureLoggedIn(gotoMusicPlaylists)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=40&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=Audio&q="); }, gotoVideoPlaylists = function(evt) { if (!ensureLoggedIn(gotoVideoPlaylists)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=41&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=Video&q="); }, gotoSentEmails = function(evt) { if (!ensureLoggedIn(gotoSentEmails)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=43&ser=31&offset=0&safety=0&sort=modified&ac=Webmail&mc=Sent&q="); }, gotoDraftEmails = function(evt) { if (!ensureLoggedIn(gotoDraftEmails)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=44&ser=31&offset=0&safety=0&sort=modified&ac=Webmail&mc=Draft&q="); }, gotoCalendars = function(evt) { if (!ensureLoggedIn(gotoCalendars)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=45&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=Event&q="); }, shareEngagePost = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(shareEngagePost)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&cp=1&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'"))); }, shareEngageGroup = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(shareEngageGroup)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&new=1&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'"))); }, engageNewPost = function(evt) { if (!ensureLoggedIn(engageNewPost)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&cp=1"); }, engageNewGroup = function(evt) { if (!ensureLoggedIn(engageNewGroup)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&new=1"); }, engageOpenGroups = function(evt) { if (!ensureLoggedIn(engageOpenGroups)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&box=i"); }, engageOpenLatestPosts = function(evt) { if (!ensureLoggedIn(engageOpenLatestPosts)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token); }, engageOpenMyLatestPosts = function(evt) { if (!ensureLoggedIn(engageOpenMyLatestPosts)) return; loadUrlInTab(GLIDE_DESKTOP_URL + "/engage?token=" + glideSession.token + "&q=%40" + glideSession.username); }, shareEmail = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(shareEmail)) return; loadUrlInNewWindow(GLIDE_WEBMAIL_URL + "/compose.aspx?token=" + glideSession.token + "&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'")), 800, 600, false); }, emailNew = function(evt) { if (!ensureLoggedIn(emailNew)) return; loadUrlInNewWindow(GLIDE_WEBMAIL_URL + "/compose.aspx?token=" + glideSession.token, 800, 600, false); }, emailOpenInbox = function(evt) { if (!ensureLoggedIn(emailOpenInbox)) return; loadUrlInTab(GLIDE_WEBMAIL_URL + "/login.aspx?token=" + glideSession.token); }, shareGroup = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(shareGroup)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/create/project.aspx?token=" + glideSession.token + "&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'")), 800, 600, false); }, groupNew = function(evt) { if (!ensureLoggedIn(groupNew)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/create/project.aspx?token=" + glideSession.token, 800, 600, false); }, gotoGroupInbox = function(evt) { if (!ensureLoggedIn(gotoGroupInbox)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=31&ser=31&offset=0&safety=0&sort=modified&ac=Group&mc=Inbox&q="); }, gotoGroupOutbox = function(evt) { if (!ensureLoggedIn(gotoGroupOutbox)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=31&ser=31&offset=0&safety=0&sort=modified&ac=Group&mc=Outbox&q="); }, shareMeeting = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(shareMeeting)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/create/chat.aspx?token=" + glideSession.token + "&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'")), 800, 600, false); }, meetingNew = function(evt) { if (!ensureLoggedIn(meetingNew)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/create/chat.aspx?token=" + glideSession.token, 800, 600, false); }, gotoMeetingInbox = function(evt) { if (!ensureLoggedIn(gotoMeetingInbox)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=31&ser=31&offset=0&safety=0&sort=modified&ac=Chat&mc=Inbox&q="); }, gotoMeetingOutbox = function(evt) { if (!ensureLoggedIn(gotoMeetingOutbox)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=31&ser=31&offset=0&safety=0&sort=modified&ac=Chat&mc=Outbox&q="); }, writeNewPost = function(evt) { var location = getCurrentDocument().location.href; var title = getCurrentDocument().title; if (!ensureLoggedIn(writeNewPost)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/write?token=" + glideSession.token + "&url=" + encodeURIComponent(location) + "&title=" + encodeURIComponent(title.replace(/'/g, "'"))); }, writeNew = function(evt) { if (!ensureLoggedIn(writeNew)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/write?token=" + glideSession.token); }, gotoDocuments = function(evt) { if (!ensureLoggedIn(gotoDocuments)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=35&ser=31&offset=0&safety=0&sort=modified&ac=Document&q="); }, presenterNew = function(evt) { if (!ensureLoggedIn(presenterNew)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/ui/presenter?token=" + glideSession.token + "&mode=composer"); }, crunchNew = function(evt) { prompt.alert(null, "Glide OS", "Coming Soon"); }, websiteNew = function(evt) { if (!ensureLoggedIn(websiteNew)) return; loadUrlInNewWindow(GLIDE_PUBLIC_URL + "/site.aspx?token=" + glideSession.token + "&id=" + EMPTY_GUID + "&edit=1"); }, gotoWebsites = function(evt) { if (!ensureLoggedIn(gotoWebsites)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=42&ser=31&offset=0&safety=0&sort=modified&ac=Container&mc=UserWebSite&q="); }, openPhotoEdit = function(evt) { if (!ensureLoggedIn(openPhotoEdit)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/ui/photo.aspx?securityToken=" + glideSession.token); }, gotoPhotos = function(evt) { if (!ensureLoggedIn(gotoPhotos)) return; loadUrlInTab(GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=31&ser=31&offset=0&safety=0&sort=modified&ac=Image&q="); }, drawNew = function(evt) { if (!ensureLoggedIn(drawNew)) return; loadUrlInNewWindow(GLIDE_DESKTOP_URL + "/ui/drawing.aspx?token=" + glideSession.token); }, gotoDrawings = function(evt) { if (!ensureLoggedIn(gotoDrawings)) return; var url = GLIDE_URL + "/glide.aspx?token=" + glideSession.token + "#mode=2&csi=32&ser=31&offset=0&safety=0&sort=modified&ac=Image&mc=Drawing&q="; loadUrlInTab(url); }, openAddressBook = function(evt) { if (!ensureLoggedIn(openAddressBook)) return; var url = GLIDE_DESKTOP_URL + "/ui/addressbook.aspx?token=" + glideSession.token; loadUrlInNewWindow(url); }, openCalendar = function(evt) { if (!ensureLoggedIn(openCalendar)) return; var url = GLIDE_DESKTOP_URL + "/ui/calendar?stoken=" + glideSession.token; loadUrlInNewWindow(url); }; return { init: init, openToolbarButton: openToolbarButton, tabSelected: tabSelected, justLogin: justLogin, registerForGlide: registerForGlide, openGlide: openGlide, openDesktop: openDesktop, logout: logout, addToBin: addToBin, viewBin: viewBin, captureImport: captureImport, captureBookmark: captureBookmark, syncCapture: syncCapture, uploadFiles: uploadFiles, gotoMusic: gotoMusic, gotoVideos: gotoVideos, gotoBookmarks: gotoBookmarks, gotoOther: gotoOther, gotoFolders: gotoFolders, gotoSlideshows: gotoSlideshows, gotoMusicPlaylists: gotoMusicPlaylists, gotoVideoPlaylists: gotoVideoPlaylists, gotoSentEmails: gotoSentEmails, gotoDraftEmails: gotoDraftEmails, gotoCalendars: gotoCalendars, shareEngagePost: shareEngagePost, shareEngageGroup: shareEngageGroup, engageNewPost: engageNewPost, engageNewGroup: engageNewGroup, engageOpenGroups: engageOpenGroups, engageOpenLatestPosts: engageOpenLatestPosts, engageOpenMyLatestPosts: engageOpenMyLatestPosts, shareEmail: shareEmail, emailNew: emailNew, emailOpenInbox: emailOpenInbox, shareGroup: shareGroup, groupNew: groupNew, gotoGroupInbox: gotoGroupInbox, gotoGroupOutbox: gotoGroupOutbox, shareMeeting: shareMeeting, meetingNew: meetingNew, gotoMeetingInbox: gotoMeetingInbox, gotoMeetingOutbox: gotoMeetingOutbox, writeNewPost: writeNewPost, writeNew: writeNew, gotoDocuments: gotoDocuments, presenterNew: presenterNew, crunchNew: crunchNew, websiteNew: websiteNew, gotoWebsites: gotoWebsites, openPhotoEdit: openPhotoEdit, gotoPhotos: gotoPhotos, drawNew: drawNew, gotoDrawings: gotoDrawings, openAddressBook: openAddressBook, openCalendar: openCalendar }; } (); window.addEventListener("load", function() { gBrowser.addEventListener("DOMContentLoaded", function() { glideExtension.init(); }, false); }, false); gBrowser.tabContainer.addEventListener("TabSelect", function() { glideExtension.tabSelected(); }, false);